import request from '@/utils/request'

/**
 * 创建订单
 * @param {Object} data - 订单数据
 * @returns {Promise} - 返回订单ID
 */
export function createOrder(data) {
  return request({
    url: '/api/front/orders/create',
    method: 'post',
    data
  })
}

/**
 * 支付订单
 * @param {Number} id - 订单ID
 * @returns {Promise}
 */
export function payOrder(id) {
  return request({
    url: `/api/front/orders/pay/${id}`,
    method: 'post'
  })
}

/**
 * 查询订单状态
 * @param {Number} id - 订单ID
 * @returns {Promise}
 */
export function getOrderStatus(id) {
  return request({
    url: `/api/front/orders/status/${id}`,
    method: 'get'
  })
}

/**
 * 获取我的订单列表
 * @param {Object} params - 分页参数 {page, size}
 * @returns {Promise}
 */
export function getMyOrders(params) {
  return request({
    url: '/api/front/orders',
    method: 'get',
    params
  })
}

/**
 * 获取订单详情
 * @param {Number} id - 订单ID
 * @returns {Promise}
 */
export function getOrderDetail(id) {
  return request({
    url: `/api/front/orders/${id}`,
    method: 'get'
  })
}

/**
 * 获取我的电子票列表
 * @param {Object} params - 分页参数 {page, size}
 * @returns {Promise}
 */
export function getMyTickets(params) {
  return request({
    url: '/api/front/tickets',
    method: 'get',
    params
  })
}

/**
 * 获取电子票详情
 * @param {Number} id - 电子票ID
 * @returns {Promise}
 */
export function getTicketDetail(id) {
  return request({
    url: `/api/front/tickets/${id}`,
    method: 'get'
  })
}

/**
 * 标记电子票为已使用
 * @param {Number} id - 电子票ID
 * @returns {Promise}
 */
export function markTicketAsUsed(id) {
  return request({
    url: `/api/front/tickets/${id}/use`,
    method: 'post'
  })
} 